/*求范围累加和 */
function getSum(start, end) {
    // sum为一个计数器
    var sum = 0;
    for (var i = start; i <= end; i++) {
        sum += i
    }
    return sum;
}

/*求任意两个数之间的和 */
function Sum(num1, num2) {
    return num1 + num2;
}
/* ......等等 */

/* 求最大值 */
function getMax(num1, num2) {
    return num1 < num2 ? num2 : num1;
}

/* 求数组的最大值 */
function getArrMax(arr) {
    var max = arr[0];
    for (var i = 1; i < arr.length; i++) {
        if (max < arr[i]) {
            max = arr[i];
        }
    }
    return max;
}

/* 求任意个数的最大值 */
function getMValue() {
    // argument是一个伪数组在不确定实参的条件下，进行比较
    var max = arguments[0];
    for (var i = 1; i < arguments.length; i++) {
        if (max < arguments[i]) {
            max = arguments[i]
        }
    }
    return max;
}

/* 反转数组 */
function reverse(arr) {
    // 空数组默认的长度为0，故此newarr.length==newarr[0]
    var newarr = [];
    for (var i = arr.length - 1; i >= 0; i--) {
        newarr[newarr.length] = arr[i]
    }
    return newarr
}

/* 数组排序（冒泡排序） */
function sort(arr) {
    // 中间变量
    var temp = "";
    for (var i = 0; i < arr.length - 1; i++) {
        // 循环的趟数
        for (var j = 0; j < arr.length - i - 1; j++) {
            // 循环两个数相比较的次数
            if (arr[j + 1] > arr[j]) {
                temp = arr[j + 1];
                arr[j + 1] = arr[j];
                arr[j] = temp;
            }
        }
    }
    return arr
}

/* 判断是否为闰年 */
function isRunYear(year) {
    // flag为判断的标准
    var flag = false;
    if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
        flag = true
    }
    return flag;
}

// 时间补0===》格式 xx:xx:xx(返回当前时分秒) 
function getTimer() {
    var time = new Date();
    var hour = time.getHours();
    hour = hour < 10 ? "0" + hour : hour;
    var min = time.getMinutes();
    min = min < 10 ? "0" + min : min
    var sec = time.getSeconds();
    sec = sec < 10 ? "0" + sec : sec
    return hour + ":" + min + ":" + sec;
}

// 倒计时:
function countDown(time) {
    var oldTime = +new Date();   //当前时间
    var nowTime = +new Date(time); //预计时间
    var times = (nowTime - oldTime) / 1000; //总的秒数==》预计时间-当前时间
    var day = parseInt(time / 60 / 60 / 24); //天
    day = day < 10 ? "0" + day : day;
    var hour = parseInt(time / 60 / 60 % 24); //时
    hour = hour < 10 ? "0" + hour : hour;
    var min = parseInt(time / 60 % 60);    //分
    min = min < 10 ? "0" + min : min
    var sec = parseInt(time % 60);
    sec = sec < 10 ? "0" + sec : sec        //当前秒
    return day + "天" + hour + "时" + min + "分" + sec + "秒"
}
// 传入一个时间戳
console.log(countDown("2021-10-24 24:00:00"));

/* 数组去重 */
// 用新数组和旧数组比较,如果新数组里面的没有出现过旧数组的值我们就添加
//利用 数组.indexof(xx)=== -1;进行筛选
function unique(arr) {
    var newarr = [];
    for (var i = 0; i < arr.length; i++) {
        if (newarr.indexOf(arr[i]) === -1) {
            newarr.push(arr[i]);
        }
    }
    return newarr;
}

/*注册事件兼容性解决方案*/
function addEventLister(ele, eventName, fn) {
    //判断浏览器是否支持事件监听的方法
    if (ele.addEventLister) {
        ele.addEventLister(eventName, fn)
    } else if (ele.attachEvent) {
        ele.attachEvent('on' + eventName, fn)
    } else {
        // element.onclick = fn;
        ele['on' + eventName] = fn;
    }
}